<?php
if (!headers_sent()) {
header("Expires: Mon, 26 Jul 1997 05:00:00 GMT");
header("Last-Modified: ".gmdate("D, d M Y H:i:s")."GMT");
header("Cache-Control: no-cache, must-revalidate");
header("Pragma: no-cache");
//header("Content-type: application/json");
}

require 'dbCon.php';
require_once 'vars.php';

//"prefix" gibt an was geladen werden soll
if (isset($_GET['prefix'])) {
	$json = array('type' => $_GET['prefix']);
	
	$items = array();
	$query = '';
	
	//den query entsprechend von "type" erstellen
	switch($_GET['prefix']) {
		//Kategorien laden
		case 'ctg':
			$query = "SELECT * FROM ak_categories ORDER BY ctg_position ASC";
			$json['query'] = $query;
			break;
		//Projekte laden
		case 'prj':
			//laden nur möglich, wenn "ctg_id" gegeben
			if (isset($_GET['ctg_id'])) {
				$query = "SELECT * FROM ak_projects WHERE prj_category_id = "
    						.$_GET['ctg_id']." ORDER BY prj_position ASC";		
				$json['query'] = $query;
			//sonst Fehler zurückgeben
			} else {
				$json['result'] = 0;
				$json['error'] = 'Parameter missing for loading projects!'
									.' ctgID = "'.$_GET['ctg_id'].'"';
			}
			break;
		//Buttons laden
		case 'btn':
			//laden nur möglich, wenn "ctg_id" oder "prj_id" gegeben
			if (isset($_GET['ctg_id']) || isset($_GET['prj_id'])) {
				//wenn prj_id gegeben, buttons eines projektes laden
			    if (isset($_GET['prj_id']) && $_GET['prj_id'] > 0 && isset($_GET['ctg_id']) && $_GET['ctg_id'] > 0) {
			    	$query = 'SELECT * FROM ak_buttons WHERE btn_project_id = '
			    				.$_GET['prj_id'].' AND btn_category_id > 0';
			    //wenn "prj_id" nicht gegeben, buttons einer category laden
			    //sofern "ctg_id" angegeben ist
			    } else if (isset($_GET['ctg_id'])) {
			        $query = 'SELECT * FROM ak_buttons WHERE btn_category_id = '
			        			.$_GET['ctg_id'].' AND btn_project_id = 0';
			    }
			    $json['query'] = $query;
			//sonst Fehler zurückgeben
			} else {
				$json['result'] = 0;
				$json['error'] = 'Parameter missing for loading buttons!'
									.' ctgID = "'.$_GET['ctg_id'].'"'
									.' ,prjID = "'.$_GET['prj_id'].'"';
			}
			break;
	}
	//Query senden
	if ($result = mysql_query($query)) {
		//wenn query erfolgreich, datensätze verarbeiten
	    while ($row = mysql_fetch_assoc($result)) {
			$item = array();
			//für jede erhaltene spalte als "key"
			foreach($row as $key => $value) {
				//den, um den jeweiligen prefix bereinigten spaltentitel
				//als "key" für den item-array verwenden und den spaltenwert
				//in item einfügen
				$pos = strpos($key,'_')+1;
				if($pos !== false) {
					if(substr($key, strrpos($key,'_')+1) == 'enable' || $key == 'btn_interactive') {
						$item[substr($key, $pos)] = (bool)$row[$key];
					} else if(substr($key, strrpos($key,'_')+1) == 'thumb' || substr($key, strrpos($key,'_')+1) == 'img') {
					// korrekten Bildpfad erstellen und ind den array einfügen
						if (!empty($row[$key])) {
							$item[substr($key, $pos)] = $imageRoot.$row[$key]; //delete $sitePath in server version
						} else {
							$item[substr($key, $pos)] = $row[$key];
						}
					} else {
						$item[substr($key, $pos)] = $row[$key];
					}
				}
			}
			//das fertige item in den item-array einfügen,
			//mit item-id als key
	        $items[$item[id]] = $item;
	    }
        $json['items'] = $items;
    	$json['result'] = 1;
    } else {
    	$json['error'] = 'Query failed! Result = "'.$result.'"';
    	$json['result'] = 0;
    }
} else {
	$json = array('result' => 0,
					'error' => 'Parameter missing! No type submitted!');
}
// Datenbankverbindung schließen
mysql_close($conn);
$encoded = json_encode($json);
ob_start();
echo $encoded;
unset($encoded);
?>